package com.example.playandroid.core.view.base

import android.app.Activity
import android.view.View
import androidx.appcompat.app.AppCompatActivity
import java.lang.ref.WeakReference

/**
 * 本应用程序中所有Activity的基类。
 */
abstract class BaseActivity : AppCompatActivity(), BaseInitActivity {
    /**
     * Activity中显示加载等待的控件。
     */
    private var loading: View? = null

    /**
     * Activity中由于服务器异常导致加载失败显示的布局。
     */
    private var loadErrorView: View? = null

    /**
     * Activity中由于网络异常导致加载失败显示的布局。
     */
    private var badNetworkView: View? = null

    /**
     * Activity中当界面上没有任何内容时展示的布局。
     */
    private var noContentView: View? = null

    private var weakRefActivity: WeakReference<Activity>? = null

    protected open fun isSearchPage(): Boolean {
        return false
    }


    override fun onDestroy() {
        super.onDestroy()
        ActivityCollector.remove(weakRefActivity)
    }

}